package cn.jr.service;

import cn.jr.pojo.OrderProject;

import java.util.ArrayList;

//订单项表
@SuppressWarnings("all")
public interface IOrderProjectService {

    //查询存在
    //查询 某一订单 里的 一个商品 by 订单主键 和 商品编号(orderId,waresNumber)
    //       如果返回的数据的waresNumber是空的，就是没有
    //       可以用来判断 存不存在 存在就执行  修改  操作，只给数量+1
    OrderProject getOrderProByOIdAndNum(int orderId, String waresNumber);

/*    //修改（添加数量+1）
    boolean changeWaresCountByOIdAndNum(int orderId,String waresNumber,int waresCount);*/
    //更新：数量+1，同时计算并 更新价格
    boolean changeAnOrderProByOIdAndNum(int orderId, String waresNumber,int waresCount
            , double waresPrice, double activeMoney);

    //更新(2.退货时 修改)：数量=waresCount-returnCount，同时 计算 并 更新 价格
    boolean changeAnOrderProByIdAndNumAndRCount(int orderId, String waresNumber,int waresCount
            ,int returnCount, double waresPrice,double activeMoney);

    //查看买了几个，得到数量往上+1
    Integer getWaresCountByOIdAndNum(int orderId,String waresNumber);
    //添加订单项表
    boolean addOrderProject(int orderId,String waresNumber,int addCount);
    //往(从) 购物车里 添加(删除) 商品
    boolean removeOrderProject(int orderId, String waresNumber);
    //添加后的 展示/查询 -- 通过订单主键，在订单项表查询所有 当前订单里的商品
    ArrayList<OrderProject> getOrderProByOrderId(int orderId);


    //对账统计
    //查询 订单项表 里的 同一种商品 by 商品编号(waresNumber)
    ArrayList<OrderProject> getOrderProByWaresNum(String waresNumber);

}
